package com.jiang.daily.Q1920;

/**
 * @author Jiang
 * @version 1.0
 * @date 2025/05/06 9:15
 */
class Solution {
    // public int[] buildArray(int[] nums) {
    //     int[] res = new int[nums.length];
    //     for (int i = 0; i < nums.length; i++) {
    //         res[i] = nums[nums[i]];
    //     }
    //     return res;
    // }

    public int[] buildArray(int[] nums) {
        int n = nums.length;
        // 第一次遍历编码最终值
        for (int i = 0; i < n; ++i) {
            nums[i] += 1000 * (nums[nums[i]] % 1000);
        }
        // 第二次遍历修改为最终值
        for (int i = 0; i < n; ++i) {
            nums[i] /= 1000;
        }
        return nums;
    }
}
